CodeIgniter সেটআপ এবং ইনস্টলেশন

Web Development - কোডইগনাইটার (Codeigniter) -

CodeIgniter একটি লাইটওয়েট PHP ফ্রেমওয়ার্ক, যা সহজেই ইনস্টল এবং কনফিগার করা যায়। নিচে ধাপে ধাপে CodeIgniter সেটআপ এবং ইনস্টলেশনের প্রক্রিয়া আলোচনা করা হলো।


সিস্টেমের জন্য প্রয়োজনীয়তা

CodeIgniter ইনস্টল করার আগে নিশ্চিত করুন আপনার সার্ভারে নিম্নলিখিত শর্তগুলো পূরণ করছে:

  • PHP ভার্সন: 7.2 বা তার উপরের সংস্করণ।
  • ওয়েব সার্ভার: Apache বা Nginx।
  • ডাটাবেস: MySQL, PostgreSQL, বা SQLite (প্রয়োজন অনুযায়ী)।
  • Composer (ঐচ্ছিক): CodeIgniter 4 ব্যবহারের জন্য প্রয়োজন।

CodeIgniter 4 ডাউনলোড এবং ইনস্টলেশন

১. CodeIgniter ডাউনলোড করুন

CodeIgniter-এর অফিসিয়াল ওয়েবসাইট থেকে CodeIgniter ডাউনলোড করুন। অথবা Composer ব্যবহার করতে চাইলে নিম্নলিখিত কমান্ডটি চালান:

composer create-project codeigniter4/appstarter your_project_name

২. ডিরেক্টরি সেটআপ করুন

ডাউনলোডকৃত ফাইলটি আনজিপ করুন এবং আপনার সার্ভারের রুট ডিরেক্টরিতে আপলোড করুন। উদাহরণস্বরূপ:

  • Apache এর জন্য: htdocs ফোল্ডারে।
  • Nginx এর জন্য: আপনার নির্ধারিত ওয়েব রুটে।

৩. ডাটাবেস সেটআপ করুন

আপনার প্রয়োজন অনুযায়ী একটি ডাটাবেস তৈরি করুন (যেমন MySQL) এবং সংযোগের তথ্য তৈরি করুন।


CodeIgniter কনফিগারেশন

১. .env ফাইল কনফিগার করুন

CodeIgniter 4 এর .env ফাইলটি কনফিগার করতে নিচের স্টেপ অনুসরণ করুন:

  1. env ফাইলটি .env এ রিনেম করুন।
  2. .env ফাইল ওপেন করে ডাটাবেসের তথ্য দিন:

    database.default.hostname = localhost
    database.default.database = your_database_name
    database.default.username = your_username
    database.default.password = your_password
    database.default.DBDriver = MySQLi
    

২. বেস URL সেট করুন

app/Config/App.php ফাইলটি খুলুন এবং বেস URL নির্ধারণ করুন:

public $baseURL = 'http://localhost/your_project_name/';

৩. ডাটাবেস ড্রাইভার সিলেক্ট করুন

ডাটাবেস ব্যবহারের জন্য ড্রাইভার নির্বাচন করতে app/Config/Database.php ফাইল কনফিগার করুন।


ওয়েব সার্ভার কনফিগারেশন

Apache এর জন্য .htaccess

public/ ডিরেক্টরিতে .htaccess ফাইলটি নিশ্চিত করুন, যা URL রিরাইটিং পরিচালনা করবে। উদাহরণ:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php/$1 [L]
</IfModule>

Nginx এর জন্য কনফিগারেশন

nginx.conf ফাইলটি কনফিগার করুন:

server {
    listen 80;
    server_name your_domain;

    root /path/to/your_project/public;
    index index.php;

    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

CodeIgniter রান এবং চেক করুন

১. সার্ভার চালু করুন

Localhost-এ CodeIgniter চালানোর জন্য PHP এর বিল্ট-ইন সার্ভার ব্যবহার করতে পারেন:

php spark serve

এটি ডিফল্টভাবে http://localhost:8080 তে রান হবে।

২. ব্রাউজারে পরীক্ষা করুন

আপনার ব্রাউজারে http://localhost/your_project_name বা http://localhost:8080 (Spark সার্ভার ব্যবহারের ক্ষেত্রে) লিংকে যান।


CodeIgniter ইনস্টল এবং সেটআপ সম্পন্ন করার পর, আপনি কাস্টমাইজড কন্ট্রোলার, মডেল, এবং ভিউ তৈরি করে ওয়েব অ্যাপ্লিকেশন ডেভেলপমেন্ট শুরু করতে পারবেন।

Content added By

XAMPP/Apache সার্ভার সেটআপ

XAMPP হলো একটি জনপ্রিয় ক্রস-প্ল্যাটফর্ম সফটওয়্যার প্যাকেজ, যা Apache Server, PHP, MySQL, এবং অন্যান্য টুলস সমন্বিতভাবে সরবরাহ করে। এটি সহজেই একটি স্থানীয় সার্ভার তৈরি করতে এবং ওয়েব ডেভেলপমেন্ট শুরু করতে সাহায্য করে।


XAMPP ডাউনলোড এবং ইনস্টলেশন

১. XAMPP ডাউনলোড করুন

২. XAMPP ইনস্টল করুন

  1. ডাউনলোড করা ফাইলটি ওপেন করুন এবং ইনস্টলেশন শুরু করুন।
  2. ইনস্টলেশনের সময়, নিম্নলিখিত কম্পোনেন্টগুলো সিলেক্ট করুন:
    • Apache
    • MySQL
    • PHP
    • phpMyAdmin
  3. ডিফল্ট ইনস্টলেশন লোকেশন (যেমন: C:\xampp) বজায় রাখুন।
  4. ইনস্টলেশন সম্পন্ন হলে XAMPP কন্ট্রোল প্যানেল চালু করুন।

XAMPP কন্ট্রোল প্যানেল ব্যবহার

১. Apache এবং MySQL সার্ভার চালু করুন

  • Apache এবং MySQL এর পাশে থাকা Start বাটনে ক্লিক করুন।
  • সার্ভার সফলভাবে চালু হলে তাদের স্ট্যাটাস সবুজ দেখাবে।

২. সার্ভার স্ট্যাটাস পরীক্ষা

  • ব্রাউজারে যান এবং টাইপ করুন: http://localhost/
  • যদি XAMPP এর ড্যাশবোর্ড দেখা যায়, তবে আপনার সার্ভার সফলভাবে কাজ করছে।

প্রজেক্ট সেটআপ XAMPP এর সাহায্যে

১. প্রজেক্ট ডিরেক্টরি তৈরি

  1. XAMPP এর রুট ডিরেক্টরিতে যান:
    • Windows: C:\xampp\htdocs\
    • Linux/macOS: /opt/lampp/htdocs/
  2. এখানে আপনার প্রজেক্টের জন্য একটি ফোল্ডার তৈরি করুন (যেমন: my_project )।

২. একটি টেস্ট স্ক্রিপ্ট তৈরি

আপনার প্রজেক্ট ফোল্ডারে একটি index.php ফাইল তৈরি করুন এবং নিচের কোড যোগ করুন:

<?php
echo "XAMPP Server Running Successfully!";
?>

৩. প্রজেক্ট অ্যাক্সেস

ব্রাউজারে যান এবং টাইপ করুন:
http://localhost/my_project/


phpMyAdmin ব্যবহার করে ডাটাবেস সেটআপ

১. phpMyAdmin অ্যাক্সেস

  • ব্রাউজারে টাইপ করুন: http://localhost/phpmyadmin/
  • phpMyAdmin ড্যাশবোর্ড ওপেন হবে।

২. নতুন ডাটাবেস তৈরি

  1. Database ট্যাবে ক্লিক করুন।
  2. একটি নাম লিখুন (যেমন: my_database) এবং Create বাটনে ক্লিক করুন।

৩. টেবিল তৈরি করুন

ডাটাবেসে টেবিল তৈরি করে আপনার প্রজেক্টের জন্য ডেটা ম্যানেজমেন্ট শুরু করুন।


XAMPP ত্রুটির সমাধান

Apache সার্ভার চালু না হলে:

  1. 80 পোর্ট কনফ্লিক্ট: স্কাইপ বা অন্য কোনো অ্যাপ ৮০ পোর্ট ব্যবহার করছে কিনা চেক করুন।
    • Apache পোর্ট পরিবর্তন: xampp\apache\conf\httpd.conf ফাইল খুলুন এবং নিচের লাইনটি পরিবর্তন করুন:

      Listen 80
      

      এটি পরিবর্তন করে Listen 8080 করুন।

  2. XAMPP কন্ট্রোল প্যানেল থেকে সার্ভার আবার চালু করুন এবং ব্রাউজারে http://localhost:8080/ ব্যবহার করুন।

XAMPP সেটআপ সম্পন্ন হলে, আপনি স্থানীয় সার্ভারে আপনার প্রজেক্ট তৈরি ও পরীক্ষা করতে পারবেন। এটি নতুন ডেভেলপারদের জন্য একটি আদর্শ পরিবেশ তৈরি করে।

Content added By

CodeIgniter ডাউনলোড এবং ইন্সটলেশন

CodeIgniter একটি লাইটওয়েট PHP ফ্রেমওয়ার্ক, যা ডেভেলপারদের দ্রুত এবং কার্যকরভাবে ওয়েব অ্যাপ্লিকেশন তৈরি করতে সহায়তা করে। এখানে ধাপে ধাপে CodeIgniter ডাউনলোড এবং ইন্সটলেশনের প্রক্রিয়া ব্যাখ্যা করা হলো।


CodeIgniter ডাউনলোড

অফিসিয়াল ওয়েবসাইট থেকে ডাউনলোড

  1. CodeIgniter এর অফিসিয়াল ওয়েবসাইটে যান: https://codeigniter.com/
  2. ডাউনলোড পেজ থেকে CodeIgniter এর সর্বশেষ স্ট্যাবল ভার্সন ডাউনলোড করুন।
  3. ডাউনলোড করা .zip বা .tar.gz ফাইলটি আপনার লোকাল সার্ভারে আনজিপ করুন।

Composer ব্যবহার করে ডাউনলোড (CodeIgniter 4)

আপনার সিস্টেমে Composer ইন্সটল করা থাকলে নিম্নলিখিত কমান্ড ব্যবহার করে CodeIgniter ডাউনলোড করতে পারেন:

composer create-project codeigniter4/appstarter your_project_name

উপরের কমান্ডটি আপনার নির্দিষ্ট ডিরেক্টরিতে CodeIgniter 4 ডাউনলোড এবং সেটআপ করবে।


CodeIgniter ইন্সটলেশন

১. ফাইল আনজিপ করা

ডাউনলোডকৃত .zip ফাইলটি আনজিপ করুন এবং ফোল্ডারটি আপনার সার্ভারের রুট ডিরেক্টরিতে কপি করুন:

  • XAMPP ব্যবহারকারীদের জন্য: C:\xampp\htdocs\your_project_name
  • Linux বা macOS ব্যবহারকারীদের জন্য: /opt/lampp/htdocs/your_project_name

২. সার্ভারে প্রজেক্ট ফোল্ডার অ্যাক্সেস

আপনার ব্রাউজারে যান এবং নিম্নলিখিত URL ব্যবহার করুন:

http://localhost/your_project_name/public

CodeIgniter সফলভাবে ইনস্টল হলে ডিফল্ট ওয়েলকাম পেজ দেখা যাবে।


প্রাথমিক কনফিগারেশন

১. .env ফাইল সেটআপ

CodeIgniter 4 এর .env ফাইলটি কনফিগার করতে নিচের ধাপগুলো অনুসরণ করুন:

  1. env ফাইলটিকে .env নাম দিন।
  2. .env ফাইল খুলে নিচের ডেটাবেস কনফিগারেশন সেট করুন:

    database.default.hostname = localhost
    database.default.database = your_database_name
    database.default.username = your_username
    database.default.password = your_password
    database.default.DBDriver = MySQLi
    

২. বেস URL কনফিগার

app/Config/App.php ফাইল খুলুন এবং বেস URL নির্ধারণ করুন:

public $baseURL = 'http://localhost/your_project_name/';

৩. ডাটাবেস কনফিগারেশন

ডাটাবেস সংযোগ সেটআপের জন্য app/Config/Database.php ফাইল এডিট করুন:

public $default = [
    'DSN'      => '',
    'hostname' => 'localhost',
    'username' => 'your_username',
    'password' => 'your_password',
    'database' => 'your_database_name',
    'DBDriver' => 'MySQLi',
    'DBPrefix' => '',
];

CodeIgniter রান করা

১. Spark সার্ভার ব্যবহার (CodeIgniter 4)

CodeIgniter 4 এর বিল্ট-ইন সার্ভার ব্যবহার করতে নিচের কমান্ড চালান:

php spark serve

এটি ডিফল্টভাবে http://localhost:8080 তে চালু হবে।

২. ব্রাউজারে পরীক্ষা

ব্রাউজারে http://localhost:8080 (Spark সার্ভার) অথবা http://localhost/your_project_name/public (XAMPP) লিংকটি খুলুন এবং দেখুন CodeIgniter সঠিকভাবে কাজ করছে কিনা।


CodeIgniter ইন্সটলেশন এবং সেটআপ সম্পন্ন করার পর, আপনি কাস্টম কন্ট্রোলার, মডেল এবং ভিউ তৈরি করে ওয়েব অ্যাপ্লিকেশন ডেভেলপমেন্ট শুরু করতে পারবেন।

Content added By

CodeIgniter ডিরেক্টরি স্ট্রাকচার এবং ফোল্ডার কনফিগারেশন

CodeIgniter একটি সুনির্দিষ্ট এবং সুসংগঠিত ডিরেক্টরি স্ট্রাকচার ব্যবহার করে। এটি ফ্রেমওয়ার্কটির কার্যকারিতা উন্নত করে এবং কোড রক্ষণাবেক্ষণ সহজ করে। নিচে CodeIgniter 4 এর ডিরেক্টরি স্ট্রাকচার এবং প্রতিটি ফোল্ডারের ভূমিকা ব্যাখ্যা করা হয়েছে।


CodeIgniter ডিরেক্টরি স্ট্রাকচার

CodeIgniter ইন্সটল করার পরে আপনি নিচের মতো একটি ডিরেক্টরি স্ট্রাকচার দেখতে পাবেন:

/app
/public
/system
/tests
/writable
/vendor
.env
spark

প্রতিটি ডিরেক্টরির বিবরণ

/app

এটি আপনার অ্যাপ্লিকেশনের মূল ফোল্ডার। এখানে আপনার কাস্টম কন্ট্রোলার, মডেল, ভিউ এবং অন্যান্য ফাইল সংরক্ষণ করা হয়।

/app/Config

এই ফোল্ডারে অ্যাপ্লিকেশনের সমস্ত কনফিগারেশন ফাইল থাকে। উদাহরণ:

  • App.php: বেস URL, ডিফল্ট ল্যাঙ্গুয়েজ ইত্যাদি কনফিগারেশন।
  • Database.php: ডাটাবেস কনফিগারেশন।
/app/Controllers

এখানে কন্ট্রোলার ফাইল তৈরি এবং সংরক্ষণ করা হয়। এটি অ্যাপ্লিকেশনের লজিক পরিচালনা করে।

/app/Models

মডেল ফাইলগুলো এখানে রাখা হয়। এটি ডাটাবেস সম্পর্কিত কাজ পরিচালনা করে।

/app/Views

ভিউ ফাইলগুলো এখানে রাখা হয়। এটি অ্যাপ্লিকেশনের আউটপুট এবং ইউজার ইন্টারফেস প্রদর্শনের জন্য ব্যবহৃত হয়।

/app/Libraries

আপনার কাস্টম লাইব্রেরি ফাইল এখানে সংরক্ষণ করা হয়।

/app/Helpers

কাস্টম হেল্পার ফাইলগুলো এখানে রাখা হয়। এগুলো অ্যাপ্লিকেশনের পুনরায় ব্যবহৃত কার্যকলাপের জন্য ব্যবহৃত হয়।


/public

এই ফোল্ডারে অ্যাপ্লিকেশনের public-facing ফাইলগুলো থাকে। এটি ব্রাউজার থেকে সরাসরি অ্যাক্সেস করা যায়। উদাহরণ:

  • index.php: এটি এন্ট্রি পয়েন্ট।
  • CSS, JavaScript, এবং ইমেজ ফাইল।

/system

CodeIgniter এর কোর ফাইলগুলো এখানে থাকে। এই ফোল্ডারে পরিবর্তন করা উচিত নয়। এটি ফ্রেমওয়ার্কের অভ্যন্তরীণ কার্যক্রম পরিচালনা করে।


/writable

এটি এমন একটি ফোল্ডার যেখানে লগ ফাইল, ক্যাশ ফাইল, এবং অন্যান্য অস্থায়ী ডেটা সংরক্ষণ করা হয়। এটি রাইটেবল (writable) হওয়া প্রয়োজন।

/writable/cache

ক্যাশ ফাইল সংরক্ষণের জন্য ব্যবহৃত হয়।

/writable/logs

লগ ফাইল সংরক্ষণ করা হয়, যা ডিবাগিং এবং সমস্যা সমাধানে সহায়ক।


/tests

আপনার অ্যাপ্লিকেশনের টেস্টিং ফাইল এখানে রাখা হয়। CodeIgniter ইউনিট টেস্টিং সাপোর্ট করে।


/vendor

Composer এর মাধ্যমে ডাউনলোড করা সমস্ত লাইব্রেরি এবং প্যাকেজ এখানে সংরক্ষণ করা হয়।


গুরুত্বপূর্ণ ফাইলসমূহ

.env

এটি CodeIgniter এর পরিবেশ (environment) কনফিগারেশন ফাইল। এটি .env নামে রিনেম করে ব্যবহার করতে হয়। উদাহরণ:

CI_ENVIRONMENT = development
database.default.hostname = localhost
database.default.database = my_database
database.default.username = root
database.default.password =

spark

এটি CodeIgniter 4 এর CLI টুল। এটি দিয়ে সার্ভার রান, মাইগ্রেশন, এবং সিড তৈরি করা যায়।

php spark serve

ডিরেক্টরি কনফিগারেশন

১. Public Folder কে Webroot হিসাবে সেট করুন

সিকিউরিটির জন্য, শুধুমাত্র /public ফোল্ডারটি ব্রাউজারে অ্যাক্সেসযোগ্য হওয়া উচিত। এর জন্য:

  • আপনার ওয়েব সার্ভারে /public ফোল্ডারটি Document Root হিসেবে সেট করুন।

২. Writable ফোল্ডার রাইট পারমিশন দিন

Linux/MacOS-এ:

chmod -R 0777 writable/

৩. .env ফাইল কনফিগার করুন

আপনার ডাটাবেস, মেইল, এবং অন্যান্য সেটিংস .env ফাইলের মাধ্যমে কনফিগার করুন।


CodeIgniter এর ডিরেক্টরি স্ট্রাকচার পরিষ্কার এবং সুসংগঠিত, যা ডেভেলপারদের সহজে কাজ করতে এবং অ্যাপ্লিকেশন রক্ষণাবেক্ষণ করতে সহায়ক করে।

Content added By

.htaccess এবং Base URL কনফিগারেশন

CodeIgniter-এ .htaccess ফাইল এবং Base URL কনফিগারেশন গুরুত্বপূর্ণ, কারণ এগুলো সঠিকভাবে কনফিগার না করলে অ্যাপ্লিকেশন সঠিকভাবে কাজ করতে পারে না। নিচে ধাপে ধাপে .htaccess এবং Base URL কনফিগারেশন প্রক্রিয়া দেখানো হয়েছে।


.htaccess কনফিগারেশন

CodeIgniter-এ .htaccess ফাইল ব্যবহার করা হয় URL রিরাইটিং এবং index.php সরিয়ে ফেলার জন্য। এটি Apache সার্ভারে কাজ করে এবং ডিফল্টভাবে ফ্রেমওয়ার্কের public/ ফোল্ডারে সংরক্ষিত থাকে।

.htaccess ফাইল তৈরি বা এডিট

  1. public/ ডিরেক্টরিতে একটি .htaccess ফাইল তৈরি করুন (যদি না থাকে)।
  2. নিচের কোডটি ফাইলটিতে যোগ করুন:

    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteBase /
    
        # Prevent access to system and writable folders
        RewriteRule ^(system|writable) index.php [F,L]
    
        # Remove index.php from URL
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)$ index.php/$1 [L]
    </IfModule>
    

Apache মডিউল সক্রিয় করুন

আপনার সার্ভারে mod_rewrite মডিউল সক্রিয় আছে কিনা নিশ্চিত করুন। যদি সক্রিয় না থাকে:

  1. XAMPP-এ httpd.conf ফাইল খুলুন।
  2. নিচের লাইনটি আনকমেন্ট করুন (যদি কমেন্ট করা থাকে):

    LoadModule rewrite_module modules/mod_rewrite.so
    
  3. Apache সার্ভার রিস্টার্ট করুন।

Base URL কনফিগারেশন

Base URL হলো অ্যাপ্লিকেশনের মূল URL। এটি সঠিকভাবে সেট না করলে বিভিন্ন রিসোর্স (CSS, JS, ইমেজ) লোড হতে পারে না এবং লিংক ঠিকমতো কাজ করবে না।

Base URL সেটআপ

  1. app/Config/App.php ফাইলটি খুলুন।
  2. $baseURL প্রপার্টি সঠিকভাবে কনফিগার করুন:

    public $baseURL = 'http://localhost/your_project_name/';
    
  3. যদি আপনি custom domain ব্যবহার করেন, তাহলে সেটি যোগ করুন:

    public $baseURL = 'http://example.com/';
    

HTTPS ব্যবহার

যদি আপনার সার্ভার HTTPS সমর্থন করে, তাহলে Base URL এ http এর পরিবর্তে https ব্যবহার করুন:

public $baseURL = 'https://example.com/';

Common Issues এবং সমাধান

Issue: .htaccess কাজ করছে না

  • সমাধান:
    1. Apache এর mod_rewrite মডিউল সক্রিয় আছে কিনা নিশ্চিত করুন।
    2. AllowOverride All সেটিং চেক করুন:
      • Apache কনফিগারেশন ফাইলে (যেমন: httpd.conf) নিম্নলিখিত পরিবর্তন করুন:

        <Directory "C:/xampp/htdocs">
            AllowOverride All
        </Directory>
        

Issue: URL এ index.php দেখাচ্ছে

  • সমাধান:
    1. .htaccess ফাইল সঠিকভাবে কাজ করছে কিনা চেক করুন।
    2. Base URL সঠিকভাবে কনফিগার করুন।

উদাহরণ: .htaccess এবং Base URL একত্রে কাজ করা

ধরুন, আপনার প্রজেক্টের নাম my_project এবং আপনার সার্ভার localhost। তাহলে:

  • .htaccess ফাইল:

    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteBase /my_project/
    
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteRule ^(.*)$ index.php/$1 [L]
    </IfModule>
    
  • app/Config/App.php ফাইলের $baseURL:

    public $baseURL = 'http://localhost/my_project/';
    

পরীক্ষার জন্য ব্রাউজারে চেক করুন

URL এর মাধ্যমে অ্যাপ্লিকেশন অ্যাক্সেস

  1. ব্রাউজারে যান:

    http://localhost/my_project/
    

index.php অপসারণ নিশ্চিতকরণ

  • লিংকে index.php থাকবে না, যেমন:

    http://localhost/my_project/controller/method
    

সঠিক .htaccess এবং Base URL কনফিগারেশনের মাধ্যমে CodeIgniter অ্যাপ্লিকেশন দ্রুত এবং নির্ভুলভাবে কাজ করবে।

Content added By
Promotion